package com.deanlib.cabinet.service;


import com.deanlib.cabinet.base.BaseService;
import org.greenrobot.eventbus.EventBus;


/**
 * 用于后台收集数据
 * Created by Dean on 2023/2/18
 */
public class MainService extends BaseService {

    @Override
    public void onCreate() {
        super.onCreate();
        EventBus.getDefault().register(this);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        EventBus.getDefault().unregister(this);
    }








//    /**
//     * 加载网络数据并存入数据
//     *
//     * @return
//     */
//    private void loadNetResourceToDB() {
//        if (UserManager.getInstance().isLogin()) {
//
//            //获取网络数据
//            request(NetWorkManager.getRequest().getResourcePackage(
//                            ConfigManager.getInstance().getSyncPackageStartResId(),
//                            ConfigManager.getInstance().enableShared())
//                    , optional -> {
//                        if (optional.isPresent()) {
//                            Download download = optional.get();
//                            FileDownloader.getImpl().create(Constants.HOST + "/download/resource/package?key=" + download.key)
//                                    .setPath(FileUtils.getDiskCachePath(), true)
//                                    .setListener(new FileDownloadSampleListener() {
//                                        @Override
//                                        protected void progress(BaseDownloadTask task, int soFarBytes, int totalBytes) {
//                                            super.progress(task, soFarBytes, totalBytes);
//                                        }
//
//                                        @Override
//                                        protected void completed(BaseDownloadTask task) {
//                                            super.completed(task);
//                                            //解包
//                                            try {
//                                                int newItemCount = 0;
//                                                Gson gson = new Gson();
//                                                BufferedReader reader = new BufferedReader(new FileReader(task.getPath()));
//                                                String line;
//                                                long maxResId = 0L;
//                                                while ((line = reader.readLine()) != null) {
//                                                    Resource resource = gson.fromJson(line, Resource.class);
//                                                    if (saveOrUploadResource(resource)) {
//                                                        newItemCount++;
//                                                        maxResId = Math.max(maxResId, resource.id);
//                                                    }
//                                                }
//
//                                                ConfigManager.getInstance().setSyncPackageStartResId(maxResId);
//                                                if (newItemCount > 0) {
//                                                    EventBus.getDefault().postSticky(new ResourceChangeEvent());
//                                                }
//                                            } catch (IOException e) {
//                                                e.printStackTrace();
//                                            }
//                                        }
//
//                                        @Override
//                                        protected void error(BaseDownloadTask task, Throwable e) {
//                                            super.error(task, e);
//                                            XLog.e("资源包下载出错 > " + e.getMessage());
//                                        }
//                                    }).start();
//                        }
//                    });
//        }
//    }
//
//
//
//
//    private boolean saveOrUploadResource(Resource resource) {
//        boolean isSaveItem = false;
//        if (resource != null && !TextUtils.isEmpty(resource.md5) && !TextUtils.isEmpty(resource.originalMd5)) {
//            Resource dbResource = AppDatabase.getDaoSession().getResourceDao().queryBuilder()
//                    .whereOr(
//                            ResourceDao.Properties.Md5.eq(resource.md5),
//                            ResourceDao.Properties.OriginalMd5.eq(resource.md5),
//                            ResourceDao.Properties.Md5.eq(resource.originalMd5),
//                            ResourceDao.Properties.OriginalMd5.eq(resource.originalMd5)
//                    )
//                    .unique();
//            if (dbResource != null) {
//                //更新部分字段
//                updateToDB(resource, dbResource);
//            } else {
//                //新增
//                AppDatabase.getDaoSession().getResourceDao().insert(resource);
//                isSaveItem = true;
//            }
//
//        }
//        return isSaveItem;
//    }

}
